﻿Public Class xtf_LISTADOproduccion_

    Public Overrides Sub IniciarLista()
        Try
            gdc_general.BeginUpdate()
            gdc_general.DataSource = dtt_DataTable
            'ulg_Lista.DisplayLayout.GroupByBox.Style = Infragistics.Win.UltraWinGrid.GroupByBoxStyle.Full

            'Creacion y carga de Cuentas
            dtt_DataTable.Columns.Add("Identificador (ID)")
            dtt_DataTable.Columns.Add("Fecha")
            dtt_DataTable.Columns.Add("Produccion")
            dtt_DataTable.Columns.Add("Estado")
            dtt_DataTable.Columns.Add("Tipo")

            gdv_general.PopulateColumns(dtt_DataTable)

            Dim obj_Produccion_ As New cls_Produccion_
            If obj_Produccion_.CargarTodos Then
                For Each Produccion As cls_Produccion_ In obj_Produccion_.Items
                    AgregarItem(Produccion)
                Next
            End If
            'ulg_Lista.DataBind()

            FiltrarColumnas()
            gdc_general.EndUpdate()
        Catch ex As Exception
            'Dim frmError As New frm_ErrorManager(ex.Message)
        End Try
    End Sub

    Public Function AgregarItem(ByRef Produccion As cls_produccion_) As DataRow
        Dim Row As DataRow = dtt_DataTable.NewRow
        Row("Identificador (ID)") = Produccion.idproduccion
        Row("Fecha") = Produccion.fecha
        If Produccion.idarticulo <> 0 Then
            Row("Produccion") = Produccion.articulo.ToString
        End If
        If Produccion.idproceso <> 0 Then
            Row("Produccion") = Produccion.proceso.ToString
        End If
        If Produccion.idmaquinariatarea <> 0 Then
            Row("Produccion") = Produccion.maquinariatarea.ToString
        End If
        Row("Estado") = Produccion.estado
        If Row("Estado") = "Incompleta" Then
            Row("Estado") = "En proceso"
        End If
        If Produccion.externa Then
            Row("Tipo") = "Externa"
        Else
            Row("Tipo") = "Interna"
        End If

        dtt_DataTable.Rows.Add(Row)
        'ulg_Lista.Rows(ulg_Lista.Rows.Count - 1).Height = 19
        Return Row
    End Function

    Public Sub ModificarItem(ByRef Produccion As cls_produccion_, ByRef ulg_row As DataRow)
        ulg_row("Identificador (ID)") = Produccion.idproduccion
        ulg_row("Fecha") = Produccion.fecha
        If Produccion.idarticulo <> 0 Then
            ulg_row("Produccion") = Produccion.articulo.ToString
        End If
        If Produccion.idproceso <> 0 Then
            ulg_row("Produccion") = Produccion.proceso.ToString
        End If
        If Produccion.idmaquinariatarea <> 0 Then
            ulg_row("Produccion") = Produccion.maquinariatarea.ToString
        End If
        ulg_row("Estado") = Produccion.estado
        If ulg_row("Estado") = "Incompleta" Then
            ulg_row("Estado") = "En proceso"
        End If
        If Produccion.externa Then
            ulg_row("Tipo") = "Externa"
        Else
            ulg_row("Tipo") = "Interna"
        End If
    End Sub

    Public Sub New()

        Me.Cursor = Cursors.WaitCursor
        InitializeComponent()
        PERMISONuevo = "009001002"
        PERMISOModificar = "009001003"
        PERMISOEliminar = "009001004"
        PERMISOImprimir = "009001005"
        Me.Text = lbl_modulo.Text : lbl_modulodescripcion.Text = "Listado de " & lbl_modulo.Text & "."
        IniciarLista()
        Me.Cursor = Cursors.Default

    End Sub

    Private Sub bbi_proyeccionProduccion_ItemClick(ByVal sender As System.Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs) Handles bbi_proyeccionProduccion.ItemClick
        Dim frm As New xtf_ABMProduccionProyeccion
        frm.Show()
    End Sub
End Class